package Ventanas;

import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.rmi.RemoteException;

import javax.swing.JFrame;

import Paneles.subPanelListaTemasModerador;

import foroindaltronia.bd.Tema;
import foroindaltronia.bd.Tema_no_terminal_oculto;
import foroindaltronia.bd.Tema_no_terminal_visible;

public class VCrearTemaAdministrador extends VCrearTema {


	/**
	 * Create the frame.
	 * @param soloTemaOculto 
	 */
	public VCrearTemaAdministrador(boolean soloTemaOculto) {
		super();
		if(soloTemaOculto){
			chckbxTemaOculto.setEnabled(false);
			chckbxTemaOculto.setSelected(true);
		}
		initialize();
	}
	
	private void initialize()
	{
		botonCrearTema.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				try {
					Tema tema;
					if(chckbxTemaOculto.isSelected())
					{
						tema = foroindaltronia.bd.Tema_no_terminal_ocultoDAO.createTema_no_terminal_oculto();
					}else{
						tema = foroindaltronia.bd.Tema_no_terminal_visibleDAO.createTema_no_terminal_visible();
					}
					tema.setNombre(textFieldNombreTema.getText());					
					
					if(VForo.temaActual instanceof Tema_no_terminal_visible)
					{
						if(tema instanceof Tema_no_terminal_visible)
							((Tema_no_terminal_visible)tema).setORM_Tema_no_terminal_visible_padre((Tema_no_terminal_visible)VForo.temaActual);
						else if(tema instanceof Tema_no_terminal_oculto)
							((Tema_no_terminal_oculto)tema).setEsta_en((Tema_no_terminal_visible)VForo.temaActual);
					}
					else if(VForo.temaActual instanceof Tema_no_terminal_oculto)
						((Tema_no_terminal_oculto)tema).setORM_Tema_no_terminal_oculto_padre((Tema_no_terminal_oculto)VForo.temaActual);
					
					tema.setFechaCreacion(VForo.getFechaCreacion());
					tema.setORM_Gestionado(VForoAdministrador.administrador);
					tema.setORM_Creado_por(VForoAdministrador.administrador);
										
					VForoAdministrador.interfazAdministrador.crearTema(tema);
					VForo.temaActual = tema;
					VForo.lblvariable.setText(VForo.temaActual.getNombre());
				VCrearTemaAdministrador.this.dispose();
					//((subPanelListaTemasAdministrador)VForoAdministrador.panelListaTemas).actualizarListaTemas(VForoAdministrador.interfazAdministrador.verTemas(tema));
				} catch (RemoteException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		});
	}

}